import CryptoJS from 'crypto-js'
let encPassword = 'emhpcnVpemh3eQ=='; // 数据传输的密钥

const cryptoJS = {
	/**
	 * AES 加密
	 * @param {*} src  明文
	 * @returns 密文
	 */
	aesEncrypt(src) {
		const key = CryptoJS.enc.Utf8.parse(encPassword)
		// 加密
		var encrypted = CryptoJS.AES.encrypt(src, key, {
			iv: key,
			mode: CryptoJS.mode.CFB,
			padding: CryptoJS.pad.NoPadding
		})
		return encrypted.toString()
	},
	
	/**
	 *  解密
	 * @param {*} result 密文
	 * @param {*} keyWord 密钥
	 * @returns 明文
	 */
	aesDecrypt(result, keyWord) {
		const key = CryptoJS.enc.Latin1.parse(keyWord)
		var iv = key
		// 解密逻辑
		var decryptd = CryptoJS.AES.decrypt(result, key, {
			iv: iv,
			mode: CryptoJS.mode.CFB,
			padding: CryptoJS.pad.NoPadding
		})
	
		return decryptd.toString(CryptoJS.enc.Utf8)
	},
	
	/**
	 * Base64 加密
	 * @param {*} src  明文
	 * @returns 密文
	 */
	base64Encrypt(src) {
		const encodedWord = CryptoJS.enc.Utf8.parse(src)
		return CryptoJS.enc.Base64.stringify(encodedWord)
	},
}
export default cryptoJS
